Modern digital systems such as the system 101 illustrated in FIG. 1A typically include multiple integrated circuits on multiple printed circuit boards. The system 101 is a desktop computer which includes two ATA-type disk drives 114 and 115 and two Personal Computer Memory Card International Association (PCMCIA) expansion slots or sockets 116 and 117. PCMCIA is a standard interface and specification to allow PCMCIA cards such as 122 and 123 to vary the capabilities of a computer system or other electronic equipment. The PCMCIA cards consist of a connector that interfaces to a printed circuit board that is approximately the size of a credit card. The main printed circuit board or motherboard 100 includes the central processing unit (CPU) 140, which is the heart of the computer system 101 and controls the operations of the system, and also the internal system memory 142. The CPU 140 is coupled to the system memory 142 and the other integrated circuits on the motherboard 100 by the core logic 143. As peripherals or subsystems such as the disk drives 114 and 115 are added to the system 101, interface boards such as the board 104 are coupled to the motherboard 100 and to the system bus 146. This interface board 104 is also coupled to the disk drives 114 and 115 by a cable 110 which allows the interface board 104 to communicate with the disk drives 114 and 115. The interface board 104 includes the ATA host adapter integrated circuit 108 which serves as the interface and controls communications between the disk drives 114 and 115 and the CPU system bus 146.
In systems of the prior art, as additional peripherals such as the PCMCIA expansion slots or sockets 116 and 117, are added to the system, an additional interface board 102 must be coupled to the motherboard 100 to serve as the interface and control communications between the PCMCIA expansion slots 116 and 117 and the bus 146. The bus 146 has a differing number of address and data lines as compared to the PCMCIA address and data line requirements. Data transfers across bus 146 are at a different rate than the data transfer to a PCMCIA card. Other control signals are also required at the PCMCIA interface in order to adapt to the various needs of differing PCMCIA cards that may be inserted. Thus the PCMCIA interface is very flexible and the PCMCIA adapter 106 is used to interface differing data and address line requirements having different transfer rates between the system bus 146 and PCMCIA cards 122 or 123. The interface boards 102 and 104 are typically coupled to the motherboard 100 by inserting them into receiving slots on the motherboard 100. Because there is limited space within the computer system case and the number of receiving slots on the motherboard 100 is also typically limited, only a finite number of interface boards can be coupled to the motherboard 100, thus restricting the number of peripherals which can be coupled to the computer system 101 at any one time.
The disk drives 114 and 115 illustrated in FIG. 1A are ATA (Advanced Technology Attached) hard disk drives. ATA hard disk drives may also be commonly referred to as IDE (Integrated Drive Electronics) hard disk drives. ATA is a set of standards and specifications used for communications between disk drives and host central processing units which defines an integrated bus interface between disk drives and host CPUs and provides a common point of attachment for system manufacturers, system integrators and suppliers of intelligent peripherals. The ATA standard interface having 40 total lines, includes a three-bit address bus designated as DA0, DA1, and DA2 used for indexing drive registers; a 16 bit bidirectional data bus designated as DD0 through DD15; a data width format signal designated as IOCS16- indicating either an 8 or 16 data bit capability, a write strobe signal designated as DIOW-; a read strobe signal designated as DIOR-; an interrupt request signal INTRQ, a status signal I/O Channel Ready designated as IORDY, and host chip select 0 and 1 signal lines respectively designated as CS1FX- and CS3FX-. The two host chip select signal lines CS1FX- and CS3FX- which act similar to an address line, select access of either Command Block registers or Control Block registers within an attached ATA disk drive. Other signals present within the ATA standard interface that may be significant to the description of the present invention will be described below. The complete ATA standard interface and communication standard is described within the APPENDIX 1 "Information Technology--AT Attachment Interface for Disk Drives".
The disk drives 114 and 115 may be designated disk drive 0 and disk drive 1 by the ATA cable connection for the ATA standard interface signal CSEL (ground=drive 0, open=drive 1) or by setup switches or jumper wires within the disk drive electronics that are read upon reset. Only one of the disk drives 114 or 115 connected to the same ATA cable 110 can be accessed at any one time. The selection of whether disk drive 0 or disk drive 1 is to be accessed is controlled through use of the drive/head register which is embedded in each disk drive. Both disk drives 114 and 115 simultaneously respond to writes on the cable to the drive/head register, however only the selected drive will respond to writes to other registers therein. Bit 4 of each drive/head register, designated DRV, is used to select the drive that should be active to receive the other drive register accesses and is compared by the drive with its CSEL or switch/jumper configuration as drive 0 or drive 1. If the host CPU sets DRV to zero then drive 0 is selected and further register accesses are to drive 0 registers. If the host CPU sets DRV to one then drive 1 is selected and further register accesses are to drive 1 registers.
Accesses to the disk drives occur during cycles such as those illustrated in FIG. 1D as either ATA read cycles 190 or ATA write cycles 191. Note that during all ATA read or write cycles either a CS1FX- or CS3FX- signal becomes active as illustrated by the CS1FX-/CS3FX- waveform 181. Activation of CS1FX- or CS3FX- is then followed by either DIOR- active low signal or DIOW- active low signal as represented by the DIOR- waveform 182 or the DIOW- waveform 183. If neither CS1FX- nor CS3FX- is active then no write or read operation is being performed to the disk drives regardless of the condition of other signals on the ATA cable 110 including DIOR- and DIOW- as illustrated by the ATA NOOP cycles 192 and 193.
If a read or write host CPU transfer cycle to or from the ATA drive needs to be extended then the ATA drive de-asserts the IORDY signal inactive low. This indicates that the selected hard disk drive needs further time to complete the present operation before any other operation may take place. Otherwise IORDY is pulled up to an active one or an active high level by a pullup resistor.
The PCMCIA expansion slots 116 and 117 illustrated in FIG. 1A are two typical implementations of sockets, also referred to as slots, into which a PCMCIA card 122 or 123 can be inserted. The PCMCIA standard enables memory and I/O devices to be inserted as exchangeable peripherals into electronic devices through a standard interface. A PCMCIA card 122 uses this standard interface, allowing PCMCIA interfaced peripheral devices such as a modem card, a network card, a sound card, a floppy disk drive, a hard disk drive, or other cards to be plugged into the system computer by means of their embodiment in a PCMCIA card 122. This PCMCIA card 122 is plugged into a PCMCIA expansion slot 116 which is coupled to a PCMCIA host adapter integrated circuit 106 within the computer system 101. The operation of the PCMCIA expansion slot 116 is controlled by the PCMCIA host adapter integrated circuit 106. The PCMCIA bi-directional buffer 120 is coupled to the PCMCIA expansion slot 116 through the bus 124. The PCMCIA bi-directional buffer 120 is coupled to the connector 128 by the bus 126. The cable 112 is coupled to the connector 128 and to the connector 130. The connector 130 is coupled to the PCMCIA host adapter integrated circuit 106 by the bus 138.
A second type of PCMCIA expansion slot 117 is also shown in the computer system 101 and coupled to the PCMCIA host adapter board 102. The second PCMCIA expansion slot 117 is coupled to the termination circuit 121 by the bus 125. The circuits 120 and 121 can be either bi-directional buffers or simple termination circuits. The termination circuit 121 is coupled to the connector 129 by the bus 127. The connector 129 is coupled to the cable 113 which is in turn coupled to the connector 131. The connector 131 is coupled to the PCMCIA host adapter integrated circuit 106 by the bus 139. The first and second PCMCIA expansion slots 116 and 117 are designed to function identically but may provide differing voltage settings and timing parameters.
The ATA standard interface is not compatible with the PCMCIA standard interface in that a PCMCIA device cannot be coupled to a system through an ATA port, even if the differing connector types were not a problem. Correspondingly, a user cannot couple a standard ATA device, such as the disk drives 114 or 115 to a system through a PCMCIA port. However, there is a method of interface described by the ATA SFF (Advanced Technology Adapter Small Form Factor) committee to connect ATA devices packaged in a PCMCIA form factor to PCMCIA socket connectors. This allows an ATA disk drive to be mechanically arranged into a PCMCIA card form factor and designates how the ATA signal lines may be arranged within the card's PCMCIA connector. However, the ATA SFF interface to a PCMCIA socket connector does not support system identification of installed drives and will not work for devices other than ATA SFF packaged disk drives. Due to the limited applicability, the ATA SFF interface method is not supported in many machines which offer PCMCIA card support. For the reasons discussed above, it is preferable to use the more flexible PCMCIA standard because it can interface to a wide variety of peripheral devices including a disk drive interface and because it simplifies the interface.
A second desktop computer system is illustrated in FIG. 1B. The only difference between the system of FIG. 1A and the system illustrated in FIG. 1B is that within the system of FIG. 1B, a single cable 170 is coupled between the PCMCIA host adapter board 102 and the two PCMCIA expansion slots 116 and 117. Cable 170 is a wider cable than cables 112 and 113 of FIG. 1A, carrying a greater number of signal lines to support two PCMCIA expansion slots 116 and 117. Due to the increased number of signal lines, cable 170 and connectors 172 and 133 are more costly than cable 112 or 113 and connectors as illustrated in FIG. 1A. The cable 170 is coupled to the connector 133 and to the connector 172 on the PCMCIA expansion board 178. The connector 133 is coupled to the PCMCIA host adapter 106 by the busses 138 and 139. The connector 172 is coupled to a termination or buffering circuit 176 by the bus 174. The termination or buffering circuit 176 is coupled to the first PCMCIA expansion slot 116 by the bus 124 and to the second PCMCIA expansion slot 117 by the bus 125.
A portable computer system 161 is illustrated in FIG. 1C. The portable computer system 161 includes an ATA compatible disk drive 114, a modem 157 and two PCMCIA expansion slots 116 and 117. Because this is a portable computer system, the integrated circuits such as the ATA host adapter 108 and the PCMCIA host adapter 106 are integrated onto the motherboard 160 instead of coupled through receiving slots as in the desktop system discussed previously. The modem 157 is coupled to a Universal Asynchronous Receiver/Transmitter (UART) through a cable 158 and a bus 155. The UART 154 is also coupled to the system bus 146. The modem 157 is also coupled to a phone jack 156 for coupling the modem to a phone line.
The graphics controller 144 of the portable computer system 161 is coupled to the system bus 146 and to the display used by the portable computer system 161, by either of the outputs 150 or 152. If the display used by the portable system 161 is a CRT display then the RGB output 150 of the graphics controller 144 is coupled to the display. If the display used by the portable system 161 is a flat-panel display then the flat-panel output 152 of the graphics controller 144 is coupled to the display.
While in the systems illustrated in FIG. 1A, 1B and 1C, ATA compatible peripherals and PCMCIA compatible peripherals have been illustrated and described, peripherals of many different formats can be coupled to systems of the prior art in this same fashion. For example, printers, modems, fax boards, digitizers, scanners and other types of peripherals can be included in a computer system by coupling an expansion board similar to the boards 102 and 104 to the motherbcard 100 in desktop systems or integrating additional integrated circuits onto the motherboard 160 for portable computer systems. However, as stated above, the number of peripherals which can be coupled to a computer system at any one time is limited to the amount of space within the computer case and the specific limitations of the motherboard 100. The cost of adding peripherals is also related to the number and size of the chips required to add those peripherals as well as the size and number of cables.
What is needed is an apparatus which allows multiple peripherals of differing formats to be coupled to the motherboard 100 by a single expansion board or a single integrated circuit interface. What is further needed is an apparatus for coupling multiple peripherals to a single expansion board or a single integrated circuit interface using a single cable or connector. What is also needed is an apparatus which will use more efficiently the finite space within a computer system case and allow a greater number of peripherals to be coupled to a computer system. What is needed is an apparatus which will use low cost standard cabling and connectors having a low signal line count in order to provide for the most economically efficient method of supporting an increasing number of peripheral devices within a computer system.